ตรวจสอบว่าเพจถูกเรียกมาจาก Spider หรือไม่
ฟังก์ชั่น isSpider จะทำการตรวจสอบว่าเพจถูกเรียกใช้โดย Web Spider เช่น Google หรือ Yahoo หรือ MSN หรือไม่ โดยทำการตรวจสอบกับ Spder หลักๆ เท่านั้นครับ หากต้องการตรวจสอบกับ Spider อื่นๆ สามารถดูรายชื่อได้จาก List of Robot Agent
ประโยชน์ของฟังก์ชั่นนี้ก็แล้วแต่การใช้งานครับ เช่นการตรวจสอบเพื่อไม่ให้ SE เข้ามาในหน้าที่เราไม่ต้องการ หรือการควบคุมให้ SE ไปยังเส้นทางที่กำหนด
<?php
function isSpider( $user_agent )
{
$gent = strtolower( $user_agent );
$known_spiders = array ( 'wisenutbot' , 'msnbot' , 'w3c_validator' , 'googlebot-image' , 'googlebot' , 'google-sitemaps' ,
'mediapartners-google' , 'openbot' , 'yahoo! slurp' , 'fast-webcrawler' , 'wget' , 'ask jeeves' , 'speedy spider' ,
'surveybot' , 'ibm_planetwide' , 'gigabot' , 'ia_archiver' , 'fast-webcrawler' , 'inktomi slurp' , 'appie' ,
'feedburner/1.0' , 'feedfetcher-google' , 'omniexplorer_bot/6.68' , 'http://www.relevantnoise.com' ,
'newsgatoronline/2.0' , 'ping.blo.gs/2.0' , 'jakarta commons-httpclient/3.0.1' , 'jakarta commons-httpclient/3.0-rc2' );
foreach( $known_spiders as $spider )
{
if ( strpos( $gent , $spider ) !== false )
{
return true;
};
};
return false;
};
if ( isSpider( $_SERVER[HTTP_USER_AGENT] ) )
{
// ถ้ามาจาก Spider
}
?>
ประโยชน์ของฟังก์ชั่นนี้ก็แล้วแต่การใช้งานครับ เช่นการตรวจสอบเพื่อไม่ให้ SE เข้ามาในหน้าที่เราไม่ต้องการ หรือการควบคุมให้ SE ไปยังเส้นทางที่กำหนด